#ifndef ARQUIVO_H
#define ARQUIVO_H

#include <fstream>
#include <exception>
#include "basicas/objeto.h"
#include "basicas/camera.h"
#include "basicas/iluminacao.h"

#include <iostream>

using namespace std;

class Arquivo
{
private:
    ifstream file;
public:
    Arquivo();
    enum FileType {OBJECT, CAMERA, ILUMINATION};
    void *load(FileType type, char *filename);
    Objeto *loadObject();
    Camera *loadCamera();
    Iluminacao *loadIlumination();
};

#endif // ARQUIVO_H
